1. Field of the Invention
The disclosure relates generally to network transmission, and, more particularly, to systems and methods for packet forward control.
2. Description of the Related Art
In network transmission, a switch has multiple ports to connect multiple packet switched network segments and forward data packets based on MAC addressing. When a packet is received from a port, the switch selectively transmits the packet from specific ports based on the destination MAC address recorded in the packet. If the destination MAC address is unknown, for example, a broadcast address, the switch transmits the packets to all of the ports except the incoming port. If the destination port is the same as the originating port, the packet is filtered out and not forwarded. If a multicast packet comprising several destination MAC addresses is received, the packet is forwarded to the corresponding ports in the MAC address table.
In data networking and queuing theory, congestion occurs when incremental increases in offered load lead either only to small increases in network throughput, or to an actual reduction in network throughput. The network situation results in serious negative impact on network performance. FIG. 1A is a schematic diagram illustrating packet multicasting. In FIG. 1A, port 0 transmits packets to ports 5, 7 and 9 in a switch. Ports 7 and 9 connect to hosts operated at 100 MHz, and port 5 connects to a host operated at 10 MHz. It is noted that B1, B2 and B3 represent output queues of ports 5, 7 and 9, respectively, and line TH represents a threshold value of output queue indicating a congestion status on the port. Since port 5 operates at 10 MHz, port 5 accumulates many packets in buffer B1, and causes packets in output queue B1 to approach the congestion status threshold value TH, resulting in port 5 congestion. In a conventional packet forward control, port 5 transmits a flag to the MAC (port 0) that caused port 5 congestion. After receiving the flag, port 0 transmits a pause frame to a host connected thereto, and stops the host from transmitting the packet again, as shown in FIG. 1B. That is, conventional packet forward control stops all packet transmissions among the ports. The congestion, however, is due to the speed of port 5, the performance of the switch is also degraded for port 0 transmitting packets to other ports. Additionally, some ports act as sniff ports for some applications. The sniff ports monitor the packet content transmission between specific ports, and easily become congestion. After congested, a port transmitting packets to the sniff ports receives a pause frame, and cannot transmit packets to all ports again.